Skip to main content

Incident Push (Version 2025‑05‑15)

Register a callback to receive robot incident alerts in real time. Group customer push support has been added.

  • Compatibility: Subscriptions created or re-saved on or after 2025‑05‑15 will adopt the new top-level field format as described in this document.
  • Existing subscriptions remain in the original two-level format (appId + payload) and are not affected.
  • New top‑level fields (siblings of appId and payload):
  • Group Customers: Multiple tenants under the same group can receive pushes through a single callback URL, distinguished by the newly added top-level fields.

Callback Registration Requirements

  1. Language: Must conform to IETF BCP 47 (e.g., en-US, zh-CN).

  2. Callback:

    • url, for example, https://{{host}}/callback, with HTTP POST method.
    • appId, for example, 24416c36-d9c7-4d74-a047-d6ca461fxxxx (used for authentication).

Example (New Format)

curl -X POST "https://{{host}}/callback" \
  -H "Content-Type: application/json" \
  -d '{
    "appId": "24416c36-d9c7-4d74-a047-d6ca461fxxxx",
    "payload": {
      "serialNumber": "ITEST00-0000-000-XXXX",
      "modelTypeCode": "Scrubber 50H",
      "content": {
        "incidentId": "74bbc189-3313-4665-8204-9fbe45dfxxxx",
        "incidentCode": "1011",
        "incidentName": "Clean water full",
        "incidentLevel": "H2",
        "incidentStatus": 1,
        "startTime": "2025-05-15T02:09:28Z",
        "endTime": "",
        "taskId": "..."
      }
    },
    "messageTypeId": 1,
    "productId": "ITEST00-0000-000-XXXX",
    "messageId": "ITEST00-0000-000-XXXX:1:74bbc189-3313-4665-8204-9fbe45dfxxxx",
    "traceId": "34c2e8f816414f318b7419b6a9c91d8f",
    "messageTimestamp": 1715740800000
}'

Top-Level Field Descriptions

FieldTypeDescription
appIdStringUsed for authentication, unchanged
payloadObjectBusiness data, same structure as in the previous version
messageTypeIdIntPush type: 1 = Incident, 2 = Task Report, 3 = Scheduling Task
productIdStringRobot serial number (SN)
messageIdStringGlobally unique message ID in the format {productId}:{messageTypeId}:{businessId}
traceIdStringRequest trace ID
messageTimestampLongPush trigger timestamp (in milliseconds)

Parameter description:

field namefield typefiled descriptionexample
payload.serialNumberStringrobot serial number"TEST00-0000-000-XXXX"
payload.modelTypeCodeStringrobot model type code"Scrubber 50H"
payload.contentObjectincident content
payload.content.incidentCodeStringincident code"1011"
payload.content.incidentNameStringincident name"Clean water full"
payload.content.incidentLevelStringincident level"H2"
payload.content.incidentIdStringincident id"c084a905-597e-4085-90dd-ecab697dxxxx"
payload.content.incidentStatusintincident status,1 alarm,0 recover1
payload.content.startTimeStringincident start time. utc time zone"2023-01-14T02:09:28Z"
payload.content.endTimeStringIncident end time,utc time zone. If the incident does not recover, end time is empty string"2023-01-14T02:09:28Z" or ""
payload.content.taskIdStringThe id of the task the robot is executing when the incident occurs."c084a905-597e-4085-90dd-ecab697dxxxx"
payload.content.subTaskIdStringThe id of the subtaskid the robot is executing when the incident occurs."c084a905-597e-4085-90dd-ecab697dxxxx"
payload.content.taskInstanceIdStringThe instance id of the task when the incident occurs."c084a905-597e-4085-90dd-ecab697dxxxx"
payload.content.taskNameStringThe name of the task when the incident occurs."task1"
payload.content.mapIdStringThe id of the map where the robot is located when the incident occurs."c084a905-597e-4085-90dd-ecab697dxxxx"
payload.content.mapNameStringThe name of the map where the robot is located when the incident occurs."map1"
payload.content.navInstanceIdStringThe navigation instance id that the robot was executing when the event occurred"da4b1ca9-dbfe-4dd2-bcbe-715c00904f0b"
payload.content.navNameStringThe name of the navigation point the robot was executing when the event occurred"hop"
payload.content.incidentLevel:
valuenamedescription
H0eventIt is not an alarm, but only an event notification
H1statusBuried point statistics
H2statusThe routine state of the robot can be solved by the user without any guidance
H3warnIt does not affect the robot task. Users can solve
H4assistance, problemIt does affect the robot task. Users can solve
H5hidden dangerIt does not affect the robot task. Users can not solve
H6faultIt does affect the robot task. Users can not solve
H7quality issuesSerious failure